//-------------------------------------------------------------------
//	Copyright (c) 2012-2014 Zhirnov Andrey
//	This file is part of the "UXGEN-ES" project.
//	See copyright notice in "Engine.h".
//-------------------------------------------------------------------

#pragma once

#ifdef PLATFORM_ANDROID

namespace Engine
{
namespace Platforms
{

	struct EKey
	{
		enum type
		{
			_UNKNOWN		= android::AKEYCODE_UNKNOWN,

			// arrows
			DPAD_UP			= android::AKEYCODE_DPAD_UP,
			DPAD_DOWN		= android::AKEYCODE_DPAD_DOWN,
			DPAD_LEFT		= android::AKEYCODE_DPAD_LEFT,
			DPAD_RIGHT		= android::AKEYCODE_DPAD_RIGHT,
			DPAD_CENTER		= android::AKEYCODE_DPAD_CENTER,
			
			// phone
			CALL			= android::AKEYCODE_CALL,
			ENDCALL			= android::AKEYCODE_ENDCALL,
			CAMERA			= android::AKEYCODE_CAMERA,
			SOFT_LEFT		= android::AKEYCODE_SOFT_LEFT,
			SOFT_RIGHT		= android::AKEYCODE_SOFT_RIGHT,
			STAR			= android::AKEYCODE_STAR,		// * 
			POUND			= android::AKEYCODE_POUND,		// # 

			// numbers
			n0				= android::AKEYCODE_0,
			n1				= android::AKEYCODE_1,
			n2				= android::AKEYCODE_2,
			n3				= android::AKEYCODE_3,
			n4				= android::AKEYCODE_4,
			n5				= android::AKEYCODE_5,
			n6				= android::AKEYCODE_6,
			n7				= android::AKEYCODE_7,
			n8				= android::AKEYCODE_8,
			n9				= android::AKEYCODE_9,

			// chars
			A				= android::AKEYCODE_A,
			B				= android::AKEYCODE_B,
			C				= android::AKEYCODE_C,
			D				= android::AKEYCODE_D,
			E				= android::AKEYCODE_E,
			F				= android::AKEYCODE_F,
			G				= android::AKEYCODE_G,
			H				= android::AKEYCODE_H,
			I				= android::AKEYCODE_I,
			J				= android::AKEYCODE_J,
			K				= android::AKEYCODE_K,
			L				= android::AKEYCODE_L,
			M				= android::AKEYCODE_M,
			N				= android::AKEYCODE_N,
			O				= android::AKEYCODE_O,
			P				= android::AKEYCODE_P,
			Q				= android::AKEYCODE_Q,
			R				= android::AKEYCODE_R,
			S				= android::AKEYCODE_S,
			T				= android::AKEYCODE_T,
			U				= android::AKEYCODE_U,
			V				= android::AKEYCODE_V,
			W				= android::AKEYCODE_W,
			X				= android::AKEYCODE_X,
			Y				= android::AKEYCODE_Y,
			Z				= android::AKEYCODE_Z,

			// symbols
			COMMA			= android::AKEYCODE_COMMA,			// , 
			PERIOD			= android::AKEYCODE_PERIOD,			// . 
			TAB				= android::AKEYCODE_TAB,
			SPACE			= android::AKEYCODE_SPACE,
			GRAVE			= android::AKEYCODE_GRAVE,			// ` (~)
			MINUS			= android::AKEYCODE_MINUS,			// - 
			EQUALS			= android::AKEYCODE_EQUALS,			// = 
			BACKSLASH		= android::AKEYCODE_BACKSLASH,		// / 
			SEMICOLON		= android::AKEYCODE_SEMICOLON,		// ; 
			APOSTROPHE		= android::AKEYCODE_APOSTROPHE,		// ' 
			SLASH			= android::AKEYCODE_SLASH,			// \ 
			PLUS			= android::AKEYCODE_PLUS,			// +
			LEFT_BRACKET	= android::AKEYCODE_LEFT_BRACKET,	// [
			RIGHT_BRACKET	= android::AKEYCODE_RIGHT_BRACKET,	// ]

			// edit
			DEL				= android::AKEYCODE_DEL,
			ENTER			= android::AKEYCODE_ENTER,

			// controls
			ALT_LEFT		= android::AKEYCODE_ALT_LEFT,
			ALT_RIGHT		= android::AKEYCODE_ALT_RIGHT,
			SHIFT_LEFT		= android::AKEYCODE_SHIFT_LEFT,
			SHIFT_RIGHT		= android::AKEYCODE_SHIFT_RIGHT,
			
			// system
			POWER			= android::AKEYCODE_POWER,
			CLEAR			= android::AKEYCODE_CLEAR,
			SYM				= android::AKEYCODE_SYM,
			EXPLORER		= android::AKEYCODE_EXPLORER,
			ENVELOPE		= android::AKEYCODE_ENVELOPE,
			AT				= android::AKEYCODE_AT,
			NUM				= android::AKEYCODE_NUM,
			HEADSETHOOK		= android::AKEYCODE_HEADSETHOOK,
			FOCUS			= android::AKEYCODE_FOCUS,
			NOTIFICATION	= android::AKEYCODE_NOTIFICATION,
			SEARCH			= android::AKEYCODE_SEARCH,
			HOME			= android::AKEYCODE_HOME,
			BACK			= android::AKEYCODE_BACK,
			MENU			= android::AKEYCODE_MENU,
			PAGE_UP			= android::AKEYCODE_PAGE_UP,
			PAGE_DOWN		= android::AKEYCODE_PAGE_DOWN,
			PICTSYMBOLS		= android::AKEYCODE_PICTSYMBOLS,
			SWITCH_CHARSET	= android::AKEYCODE_SWITCH_CHARSET,
			
			// media
			MEDIA_PLAY		= android::AKEYCODE_MEDIA_PLAY_PAUSE,
			MEDIA_STOP		= android::AKEYCODE_MEDIA_STOP,
			MEDIA_NEXT		= android::AKEYCODE_MEDIA_NEXT,
			MEDIA_PREVIOUS	= android::AKEYCODE_MEDIA_PREVIOUS,
			MEDIA_REWIND	= android::AKEYCODE_MEDIA_REWIND,
			MEDIA_FORWARD	= android::AKEYCODE_MEDIA_FAST_FORWARD,
			MEDIA_MUTE		= android::AKEYCODE_MUTE,

			// volume
			VOLUME_UP		= android::AKEYCODE_VOLUME_UP,
			VOLUME_DOWN		= android::AKEYCODE_VOLUME_DOWN,
			
			// unknown
			BUTTON_A		= android::AKEYCODE_BUTTON_A,
			BUTTON_B		= android::AKEYCODE_BUTTON_B,
			BUTTON_C		= android::AKEYCODE_BUTTON_C,
			BUTTON_X		= android::AKEYCODE_BUTTON_X,
			BUTTON_Y		= android::AKEYCODE_BUTTON_Y,
			BUTTON_Z		= android::AKEYCODE_BUTTON_Z,
			BUTTON_L1		= android::AKEYCODE_BUTTON_L1,
			BUTTON_R1		= android::AKEYCODE_BUTTON_R1,
			BUTTON_L2		= android::AKEYCODE_BUTTON_L2,
			BUTTON_R2		= android::AKEYCODE_BUTTON_R2,
			BUTTON_THUMBL	= android::AKEYCODE_BUTTON_THUMBL,
			BUTTON_THUMBR	= android::AKEYCODE_BUTTON_THUMBR,
			BUTTON_START	= android::AKEYCODE_BUTTON_START,
			BUTTON_SELECT	= android::AKEYCODE_BUTTON_SELECT,
			BUTTON_MODE		= android::AKEYCODE_BUTTON_MODE,

			_COUNT			= 256
		};
	};


}	// Platforms
}	// Engine

#endif	// PLATFORM_ANDROID